package com.jinghangzz.shop.demo.service;

import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSONObject;
import com.jinghangzz.shop.common.util.PageInfoUtil;
import com.jinghangzz.shop.demo.pojo.ADynasty;
import com.jinghangzz.shop.demo.pojo.AKing;

/**
 * Service:用户的Service
 * 一个模块一个Service
 * 一个Service持有多个dao的引用
 * @author TeaBig
 *
 */
public interface IDemoService
{
	/*==========朝代表模块操作开始===============*/
	/**
	 * 查询一条朝代记录
	 * @param condMap	查询条件
	 * @return	返回朝代的对象
	 */
	ADynasty findOneDynastyService(Map<String, Object> condMap);
	
	/**
	 * 查询多条朝代记录
	 * 
	 * 支持查询多条记录
	 * 支持搜索
	 * 支持分页;
	 * 
	 * @param condMap	查询条件
	 * @return	返回朝代的集合
	 */
	List<ADynasty> findCondListDynastyService(PageInfoUtil pageInfoUtil,
			Map<String, Object> condMap);
	
	/**
	 * 保存一条朝代记录
	 * @return
	 * 返回此sql语句对数据库的影响条数
	 * 我还想返回主键;
{
	响应码
	"code":"0",
	响应信息
	"info":"成功"
	数据
	"data":
	{
	    	影响条数
		"effect":""
		主键
		"id":""
	}
}
	fastjson:
	 */
	JSONObject saveOneDynastyService(ADynasty dynasty)throws Exception;
	
	/**
	 * 更新一条朝代记录
	 * @return
	 */
	JSONObject updateOneDynastyService(ADynasty dynasty)throws Exception;
	
	/**
	 * 删除批量朝代记录
	 * @return
	 */
	JSONObject deleteBatchDynastyService(Map<String, Object> condMap)throws Exception;
	/*==========朝代表模块操作结束===============*/
	
	/*==========皇上表模块操作开始===============*/
	/**
	 * 查询一条皇上记录
	 * @param condMap	查询条件
	 * @return	返回皇上的对象
	 */
	AKing findOneKingService(Map<String, Object> condMap);
	
	/**
	 * 查询多条皇上记录
	 * 
	 * 支持查询多条记录
	 * 支持搜索
	 * 支持分页;
	 * 
	 * @param condMap	查询条件
	 * @return	返回皇上的集合
	 */
	List<AKing> findCondListKingService(PageInfoUtil pageInfoUtil,
			Map<String, Object> condMap);
	
	/**
	 * 保存一条皇上记录
	 * @return
	 */
	JSONObject saveOneKingService(AKing king)throws Exception;
	
	/**
	 * 更新一条皇上记录
	 * @return
	 */
	JSONObject updateOneKingService(AKing king)throws Exception;
	
	/**
	 * 删除批量皇上记录
	 * @return
	 */
	JSONObject deleteBatchKingService(Map<String, Object> condMap)throws Exception;
	/*==========皇上表模块操作结束===============*/
}
